import { useIntersectionObserver } from '@vueuse/core'

export const imgLazy = {
  install(app) {
    app.directive('img-lazy', {
      // el: 指令绑定的元素
      // binding.value: 绑定指令时传入的值
      mounted(el, binding) {
        // vueuse提供的方法，监听元素是否进入可视区域
        const { stop } = useIntersectionObserver(
          el,
          ([entry]) => {
            console.log(entry)
            if (entry.isIntersecting) {
              el.src = binding.value
              stop()
            }
          },
        )
      }
    })
  }
}
